1. Field of the Invention
This invention relates to a method for decorrelating data recorded on a medium exploitable by a processing unit.
2. Description of Background and Relevant Information
There are many known methods of data encryption or cryptography. They serve to encode data such that the latter can be read only by an authorised recipient who possesses a key. Their importance is developing simultaneously with information networks and their use can be expected to become widespread in accordance with legislation in force.
Some encryption methods can provide unconditional security, but call upon heavy technical means which slow down communications or make the key exchange management very costly, while others cannot even be used practically.
For instance, to encrypt a flow of clear messages, the Vernam encryption method requires a flow of keys of the same length. Synchronisation between the sender and receiver then becomes difficult to achieve.
The conditions for unconditional security were formalised in 1949 by Shannon, who was able to demonstrate on the basis of information theory that unconditional security requires that the key must be at least equal to the total size of the messages that can be encrypted without corruption.
Thus, an encryption operation is carried out to ensure the protection of data recorded on a medium exploitable by a processing unit and liable to be transmitted. For the encryption of a series of messages to be secure, it is necessary to make these operations independent over a small number of messages.
The main encryption function used at present is the digital data encryption standard (DES) adopted by the U.S. government. This function is based on the (sixteen-fold) iteration of simple functions following the so-called xe2x80x9cFeistelxe2x80x9d scheme. The purpose of the large number of iterations is to weaken the correlation between the encrypted messages.
The DES is described in many documents and in particular the publication entitled xe2x80x9cEncryption, Theory and Practicexe2x80x9d by Douglas STINSON (International Thomson Publishing).
To improve the reliability of encryption and to safeguard against exhaustive searches, it has been proposed to increase the length of the key, or even to introduce a decorrelation of order 1. This is what has been submitted by the authors of the following two articles: Advances in Cryptologyxe2x80x94CRYPTO ""96, 16th Annual International Cryptology Conference, Santa Barbara, Aug. 18-22, 1996, Proceedings no. Conf. 16, Aug. 18, 1996, Koblitz N (ED), pages 252-267 by KILIAN J. et al., and Advances in Cryptologyxe2x80x94ASIACRYPT, Fujiyoshida, Nov. 11-14, 1991, no. Conf. 1, Nov. 11, 1991, Hideki Imai; Rivest R L; Tsutomu Matsumoto, pages 210-224 by EVEM S. et al.
However, such measures are not sufficient to protect against attacks made possible by the recently-developed linear and differential cryptanalysis techniques.
The object of the invention is thus to provide a data encryption method which provides optimal security and which can be implemented with relatively simple functions only requiring modest calculation resources.
To this end, the invention relates to a method for the cryptography of data stored on a medium exploitable by a computing unit in which the computing unit processes an input information x by means of a key to provide information F(x) encoded by a function F.
According to the invention, the function F uses a decorrelation module MK, of rank at least equal to two, such that F(x)=[Fxe2x80x2(MK)](x), where K is a random key and Fxe2x80x2 is a cryptographic function.
Generally speaking, a decorrelation module serves to transform a message x by the function MK involving a key, such that the distribution MK(x1), . . . , MK(xt) obtained from any t different messages with a random variation of the key has a uniform or quasi uniform distribution.
Such a decorrelation module can thus be employed within a data encryption device, possibly after an information dividing device which supplies fixed length data x0 in response to the input information x.
The invention can be implemented so that t blocks of messages c1, . . . , c1 coded by the function F do not give any statistical information on that function.
In different embodiments each having particular advantages, the invention has the following features according to any technically feasible combinations thereof:
the input information x is divided up into elements x0 of fixed length,
the function F is of the form F(x)=Fxe2x80x2(MK(x)),
the coding function Fxe2x80x2 is divided up into two functions Fxe2x80x3 and Gxe2x80x3 and
F(x)=Fxe2x80x3(MK(Gxe2x80x3(x))),
the decorrelation module MK is inversible,
the decorrelation module is MK(x)=ax+b, where K=(a, b) with axe2x89xa00,
the decorrelation module is MK(x)=a/(x+b)+c, where K=(a, b, c) with axe2x89xa00,
the function F is a Feistel function applying n iterations each with a function Fi,
the decorrelation module MK is non-inversible,
at each iteration, Fi(x)=Fxe2x80x2i(MK(x)),
at each iteration, Fi(x)=Fxe2x80x3i(MK(Gxe2x80x3i(x))),
MK(x)=k1+k2x+k3x2+ . . . +ktxtxe2x88x921,
where K=(k1, k2, k3, . . . , kt).